From b9ac96e591788af4de8101e9fa23434592496770 Mon Sep 17 00:00:00 2001 From: Elliot Lee Date: Mon, 7 Aug 2000 23:00:38 +0000 Subject: [PATCH] Handle GDK_INCLUDE_INFERIORS subwindow_mode. Handle GDK_INCLUDE_INFERIORS subwindow_mode. Call gobject finalize routine in gdk_gc_finalize. Unrememberable etcs. --- gdk/linux-fb/gdkdrawable-fb2.c | 3 +++ gdk/linux-fb/gdkgc-fb.c | 2 ++ gdk/linux-fb/gdkinput-ps2.c | 2 +- gdk/linux-fb/gdkpango-fb.c | 2 ++ 4 files changed, 8 insertions(+), 1 deletion(-) diff --git a/gdk/linux-fb/gdkdrawable-fb2.c b/gdk/linux-fb/gdkdrawable-fb2.c index 3384ad49bd..413c4ab785 100644 --- a/gdk/linux-fb/gdkdrawable-fb2.c +++ b/gdk/linux-fb/gdkdrawable-fb2.c @@ -209,6 +209,9 @@ gdk_fb_clip_region(GdkDrawable *drawable, GdkGC *gc, gboolean do_clipping, gbool if(skipit) return real_clip_region; + if(gc && GDK_GC_FBDATA(gc)->values.subwindow_mode == GDK_INCLUDE_INFERIORS) + do_children = FALSE; + if(do_clipping && GDK_IS_WINDOW(GDK_DRAWABLE_FBDATA(drawable)->wrapper) && GDK_WINDOW_P(GDK_DRAWABLE_P(drawable)->wrapper)->mapped && !GDK_WINDOW_P(GDK_DRAWABLE_FBDATA(drawable)->wrapper)->input_only) { GdkWindow *parentwin, *lastwin; diff --git a/gdk/linux-fb/gdkgc-fb.c b/gdk/linux-fb/gdkgc-fb.c index 3e166cf81f..fe55f6d447 100644 --- a/gdk/linux-fb/gdkgc-fb.c +++ b/gdk/linux-fb/gdkgc-fb.c @@ -100,6 +100,8 @@ gdk_fb_gc_finalize (GObject *obj) gdk_pixmap_unref(GDK_GC_FBDATA (gc)->values.stipple); if (GDK_GC_FBDATA (gc)->values.tile) gdk_pixmap_unref(GDK_GC_FBDATA (gc)->values.tile); + + G_OBJECT_CLASS (parent_class)->finalize (obj); } static void diff --git a/gdk/linux-fb/gdkinput-ps2.c b/gdk/linux-fb/gdkinput-ps2.c index 03f40bcd3b..dcce152a4f 100644 --- a/gdk/linux-fb/gdkinput-ps2.c +++ b/gdk/linux-fb/gdkinput-ps2.c @@ -922,7 +922,7 @@ keyboard_get_state(Keyboard *k) return retval; } -static GdkWindow * +GdkWindow * gdk_window_find_focus(void) { if(_gdk_fb_keyboard_grab_window) diff --git a/gdk/linux-fb/gdkpango-fb.c b/gdk/linux-fb/gdkpango-fb.c index 08c005dd6d..fba3fcad78 100644 --- a/gdk/linux-fb/gdkpango-fb.c +++ b/gdk/linux-fb/gdkpango-fb.c @@ -472,6 +472,7 @@ pango_fb_font_get_glyph_info(PangoFont *font, PangoGlyph glyph) FT_GlyphSlot g; PangoRectangle *my_logical_rect, *my_ink_rect; FT_Face ftf; + gboolean free_buffer = FALSE; ftf = fbf->ftf; @@ -506,6 +507,7 @@ pango_fb_font_get_glyph_info(PangoFont *font, PangoGlyph glyph) g_error("Glyph render failed"); renderme = &bgy->bitmap; + free_buffer = TRUE; } else renderme = &g->bitmap; -- 2.30.2